/**
* FOLDER CODE ADD 2
* There are 3 different implementations:
*
* - Sencha Packager
* - (PhoneGap)
* - Simulator
*
* @mixins Ext.device.device.Abstract
*
* @aside guide native_apis
*/
Ext.define('Ext.file.File', {
    singleton: true,

    requires: [
        'Ext.file.file.PhoneGap',
        'Ext.file.file.Android',
        'Ext.file.file.Sencha',
        'Ext.file.file.Simulator'
    ],

    constructor: function() {
        var browserEnv = Ext.browser.is;

        if (navigator.userAgent.match(/(iPhone|iPod|iPad)/))
            return Ext.create('Ext.file.file.PhoneGap');
        else
        if (navigator.userAgent.match(/(Android)/))
            return Ext.create('Ext.file.file.Android');

        if (browserEnv.WebView) {
            return Ext.create('Ext.file.file.Sencha');
        }
        else {
            return Ext.create('Ext.file.file.Simulator');
        }
    }
});
